草庐IT

c++ - constexpr 计算量的实际限制

全部标签

ruby - 在未安装 ruby​​ 的计算机上运行 ruby​​ 程序

我是ruby​​编程的新手,实际上写了一个我想要的程序分发给拥有Windows计算机且未安装ruby​​的人。我听说过一些关于exerb的事情,但我不确定这是否适合我的问题,或者是否有更简单的方法。有什么东西可以让我的ruby​​代码像exe文件一样运行吗? 最佳答案 您可以使用ocra创建一个exe。此exe文件是一个带有您代码的自解压ruby​​解释器。安装好ocra之后,就可以开始了:ocramy_application.rb有一些限制/陷阱:您可能不依赖于额外的dll(参见例如BundlingRMagickwithOcra)

c - Windows 上的 gcc 生成垃圾? Windows 与 Linux

我想找出为什么在Windows中对同一程序的指令比在Linux中多得多。所以我只用了inta=0xbeef;和printf("test\n");在C中并在Linux和Windows中编译。当我调试和反汇编主机时,我得到了这个:在Linux上:0x080483e4:push%ebp0x080483e5:mov%esp,%ebp0x080483e7:and$0xfffffff0,%esp0x080483ea:sub$0x20,%esp0x080483ed:movl$0xbeef,0x1c(%esp)0x080483f5:movl$0x80484d0,(%esp)0x080483fc:cal

c - RegQueryValueEx()读取REG_DWORD时总是在*lpData中填0

我对RegQueryValueEx()函数有疑问当我使用它时,它用0填充*lpDataLONGWINAPIRegQueryValueEx(_In_HKEYhKey,_In_opt_LPCTSTRlpValueName,_Reserved_LPDWORDlpReserved,_Out_opt_LPDWORDlpType,_Out_opt_LPBYTElpData,_Inout_opt_LPDWORDlpcbData);这是不起作用的代码#include#includeintmain(){HKEYhKey=NULL;DWORDdata=42;DWORDtype=REG_DWORD;DWOR

windows - 用于检查域中计算机名称的简单批处理脚本

前提:我不是程序员。我需要做一个简单的批处理脚本来检查域中的计算机名称,如果名称正确,则执行另一个批处理脚本(我已经有了),否则它会检查下一台计算机的名称。我尝试做某事,但这对我来说非常困难。If%computername%=VDSXXXXXXDthenc:\XXXXX\XXXX.batechoVDSXXXXDFOUNDElse%computername%=VDSYYYYYDthenc:\XXXXXX\ZZZ.batechoVDYYYYYDFOUNDElse%computername%=VDSYYYYYDthenc:\XXXXXX\ZZZZ.batechoVDSZZZZZDFOUNDg

python - 在 Python 中确定计算机是否通过 WiFi 网络或以太网电缆连接到互联网

我想知道如何让Python脚本确定计算机如何连接到网络。这样做的原因是因为如果连接速度太慢,脚本会出现错误,所以如果用户通过WiFi连接,我想显示警告。正在运行的实际Python可执行文件位于我公司的LAN上,因此这就是连接速度很重要的原因。此外,由于此可执行文件无法在没有连接的情况下运行,因此我不关心检查用户是否在线。我对Python如何与此类事物交互(或者即使可能)一无所知,所以如果有任何我可以澄清的地方,请告诉我。提前致谢我在Windows764位上使用Python2.7.632位(不同的位因为pyEnchant) 最佳答案

c - 未使用 MinGW 编译的 Winsock 服务器代码

以下是来自http://msdn.microsoft.com/en-us/library/windows/desktop/ms737593(v=vs.85).aspx的winsock服务器代码#undefUNICODE#defineWIN32_LEAN_AND_MEAN#include#include#include#include#include//NeedtolinkwithWs2_32.lib#pragmacomment(lib,"Ws2_32.lib")//#pragmacomment(lib,"Mswsock.lib")#defineDEFAULT_BUFLEN512#def

c - 如何检查套接字上是否有数据可用?

SOCKETs;//CreateaSOCKETforlisteningfor//incomingconnectionrequests.SOCKETnew_socket;//createasocketforacceptingincomingconnectionuint16port=18001;voidCreateSocket(){intsin_size;WSADATAwsa;structsockaddr_inserver,master;//creatingasocketaddressstructure:structurecontainsipaddressandportnumberprin

c++ - timeEndPeriod 是恢复之前的值还是默认值?

假设默认计时器分辨率为15毫秒。鉴于这种情况:ProcessAcallstimeBeginPeriod(1);Nowtimerresolutionis1ms.ProcessBcallstimeBeginPeriod(2);Nowtimerresolutionis2ms.ProcessBcallstimeEndPeriod(2);那么定时器分辨率是多少?它会回落到1毫秒还是15毫秒?让我们稍微修改一下场景:ProcessAcallstimeBeginPeriod(1);Nowtimerresolutionis1ms.ProcessBcallstimeBeginPeriod(2);Nowt

c - 在 vtbl 中命名函数指针

抱歉,初学者的问题。在非常好的文章中CominplainC我读到这句话:OnerequirementofaCOMobjectisthatthefirstthreemembersofourVTable(i.e.,ourIExampleVtblstruct)mustbecalledQueryInterface,AddRef,andRelease.这是真的吗?如果更改名称,但参数、调用约定和返回值将相同怎么办?你还在做这个吗?如果不是,为什么?非常感谢您的回复。(正面或负面。) 最佳答案 每个COM接口(interface)都必须派生自I

c - 无法在 Windows 8 上使用 MinGW 执行 execl()

我有一个文件hello.exe,文件路径是D:\test\hello.exe,这是一个简单的helloworld程序(测试ok)。我还有一个程序proc.c,文件路径是D:\test\proc.c,代码如下:#include#include#include#include#include#includemain(intargc,char*argv[]){intret;ret=execl("D:\\test\\hello.exe","D:\\test\\hello.exe");if(ret==-1)printf("%d:\t%s",ret,errno);}程序挂起(windows对话框显